home *** CD-ROM | disk | FTP | other *** search
- _CbD_'s Tutorial #2
- Rummy 500
-
- Well here is a look a at different way for Cracking VB3 programs
- Target: RUMMY 500 (Version 3.8)
- Get it Here:Comes with the Tutorial
- Tools Needed: Softice v3.xx
-
- Ok Lets talk about the program first. Well it is ok for a VB3 game and considering it was
- done by women. ( Not a sexest remark) ;-) anyway this is really a nice game if you like
- the card game rummy, BUT this lady seems to think that she must put nag screens
- everywhere. Hmmm I hate that so that is what is driving this crack. There are nags
- at the end of every hand (with a 10sec delay) and this is just not fair to us who wish
- to evaluate it at its full. ;-). Ok that is enough about the program.
-
- Now as always we will be doning this in steps, so lets get started.
-
- Step #1
- Ok we have to find out a little info about the program so we use QuickView
- (See Tut #1 for info on QuickView) to find out a little about our pup here.
- Hmm looks like a VB3 file. Ok well that takes care of that cause we know
- we cant crack VB programs cause they dont use any of the normal fuctions
- that we set our BreakPoints on right? WRONG if you have read my tut #1 or
- razzia's VB tut's you will know we can crack VB programs just as if not
- faster than any other... Ok Now lets do a little searching to see if we can find out
- any info on the program, so we look in the dir that we installed to and Whats this
- 2 files that might be of some use one is Rummy500.faq and the other is Readme.txt
- so lets see whats in them First the Faq. hmm nothing there that seems to help
- so next the Readme.txt..... Whats this do you see what i see
-
- ****************************************************************************
- IMPORTANT NOTE: MeggieSoft Games does not process any registrations between
- December 15th and January 15th. Any registrations received during this
- period will be processed after January 15th. The registration reminder
- will not be displayed between December 20th and January 15th.
- ****************************************************************************
-
- No way it cant be that simple not with a program that has so many nags
- well lets try anyway. Change you systems date to say January 1 that would
- give us 15 days. Hmm well they are right no 10 sec delays but yup
- there is still a nag screen and we just cant live with this can we ;-)
- but it was nice of them to tell us anyway. So change your date back
- so we can enter a Reg Number and crack it.
-
- Step #2
- Ok now we have not found anything that we can really use to help us other
- than knowing that it is a VB3 program so lets get started cracking it
- first lets start the program and wait for that nagging 10sec delay to go by
- and then press register, Damn more screens what is this shit...
- ok press Enter Registration, Hmm Name and number well that is not good
- that means most likely this wont be just some serial number for us to
- find in softice that was hardcoded in, Not that this will make it any harder
- just take a few more minutes.
-
- Step #3
- Ok now enter a name i use (CbD! Cracked) Dont use this cause you are
- cracking it not me ;-) . Now enter a Serial number i use (7777777) now
- press enter and see what happens. Hmm not a good serial number
- well shit we knew that already so press ok. Hmm well we get another shot
- at it with out haveing to start over good i like this.
-
- Step #4
- Press Ctrl-D and pop into softice ( If you dont have softice you cant do this crack)
- now lets set a BreakPoint on hmemcpy so do this BPX HMEMCPY and press
- enter. now we have a Breakpoint that should pop us into SI(SoftIce) when we
- hit enter in the registration screen so now (If you didnt have any other BreakPoints
- Set and if you did Clear Them before you go on you can do a BC * and then press
- enter and reset the HMEMCPY breakpoint so it is your only one) press Ctrl-D
- and you should land back in the registration srceen
-
- Step #5
- Press enter Boom back to SoftIce we go ok now we are in the HMEMCPY fuction
- we dont want to be here so we press F11 to get back to the fuction that called HMEMCPY
- but wait this little program had 2 boxes remember 1 for the Name 1 for the number
- so this is most likely the Name fuction and this (You can crack it from here but takes forever)
- is not what we want , we want the serial number right. Ok so press F5 and Pop right
- back in SoftIce we go and Yes back to the HMEMCPY function so Press F11 again
- to get out of it. Now we should be looking at something like this
-
- 17CF:0B40 CALL KERNEL!HMEMCPY
- 17CF:0B45 PUSH WORD PTR [DI]
- 17CF:0B47 CALL KERNEL!LOCALUNLOCK
- 17CF:0B4C MOV AX,SI
-
- Ok the Address's may differ but the code should look the same, Well this dont look to
- intresting to us right now so lets step in the code a bit with F10 so press F10
- you see the lines advancing as you press the key, ok well you will see a few POP's
- and then LEAVE and RET <---(interesting) we are in a fuction that called HMEMCPY
- and now we seem the be fixing to return from the one that called this one hmm ok
- lets keep pressing F10 do this about 10 times or so or until you see the code below
- (Note You should Press F10 a total of 14 times after the last F11) there will be a RET
- that will land you at
- 0C0D POP DS <------ Should land here
- 0C0E POP BP <----- Hmm what is this ?
- 0C0F RETF 000C <---- This looks to me like a compare Return cause it loads 2 values then
- Returns most likely to were they are compared
- ( I kow this already cause i traced it down for you )
- Now here is what my window looked like when i steped through 14 times
-
- EAX=056AOOOB EBX=000275EA ECX=00000000 EDX=06700000 ESI=00021B74
- EDI=00020106 EBP=000062AO RSP=000062AO EIP=OOOOOCOE o d I s Z a P c
- CS=17CF DS=2B57 SS=2B57 ES=3387 FS=059F GS=011B
-
- ----RUMMY500(02)------------------------------------dword---------------PROT---(0)--
- 2B57:000062A0 0F0E:62BC 0000: 1807 3387:115K 000D:000C .b...... ..3....
- 2B57:000062B0 0106:OD7C 1B74: 0002 2B57:0002 0381:62D8 ].....t...W+.b..
- 2B57:000062C0 0001:1807 115E: 0000 000C:3387 37F4:000D ...... ..3.....7
- 2B57:000062D0 0BF4:0002 0386: 17CF 0751:632A 0001:1207 ......*CQ.......
- 2B57:000062E0 115E:0000 000C: 3387 0D7C:000D 17CF:OBF4 .....3..........
- 2B57:000062F0 0106:2B57 01E6: 0106 0000:33D7 3032:33D7 W+.......3...320
- 2B57:00006300 3632:2D30 3933: 2D36 0588:0035 6352:0043 0-266-395...C.Rc
-
- ----USER!BOZOSLIVEHERE+001C---------------------------------------------------PROT16-
- 17CF:OCOA CALL 25C2
- 17CF:OCOD POP DS <----- Load Value #1
- 17CF:OCOE POP BP <----- Load Value #2
- 17CF:OCOF RETF OOOC <---- Go back and caompare them
- 17CF:OC12 MOV AX,171F
- 17CF:OC15 MOV ES,AX
-
- ----------------------------------- USER(OA)----------------------------------------
-
- Hmm then we should be able to check the values of DS & BP
- (I already know the one that holds the Good Serial #)
- So lets do this ED BP and press enter You should see something like
- the above Data Window . ( Note Make sure you window fairly wide so you can see
- all the data or scroll down. Now I cant say for sure but everytime i have done this
- I have gotten a valid Code (I havent looked very deep into the program yet)
- so i cant give you the exact reason this code is here but i will soon make a key gen
- and give full explanation of the code so look for it soon. Well now if you look you
- will notice that there are a string of numbers divided by a "-" mine is
- 3202-266-395 well my code was 202-266-395 This will not werk for you
- as it is different for every computer even if The names are the same (Note
- Do Not use Specail charactors in the name ie _ [ / ] - + < > use only numbers
- or letters) so look to see what yours is. you may or may not have 4 numbers
- in the first part of the string if you do ignore the first number as it is not part of the
- code, if you notice the same number appears just before the string so drop that one
- off and one use xxx-xxx-xxx well that should do it just clear your breakpoints(BC *)
- and return to the program (Ctrl-D) and then enter you Code and Boom there you are
- no more nag srceens.. But please Do register as the Author done a good job one
- this one even if they did put so many nags in it and the Fee is only $12 like that is
- to much.......
-
-
- Well hope This helped you some and helped you to understand a little
- more about VB programs. and if not atleast you got a cool game, without nags
- (unless you still cant carck it ) and even then you know how to get rid of the
- 10 sec delays CHANGE THE DATE... duhhhh ok well thats all for this one
- All tutorials i write will be availible from Http://users.quicklink.net/~cbd/c4n or
- http://mexelite.home.ml.org ENJOY........... _CbD_ [ME/C4N'97]
-
- Oh yeah i almost forgot you can change the back of the cards to
- what ever you wish by editing the rummy500.bmp file in a
- editor such as PaintBrush (Comes with windows). Just though
- you might want to know that. Mine say Cracked by CbD ;-)
-
-